package leetcode.number;

import java.util.*;

public class LargestNumber {

    public Map<Integer, List<Integer>> add(Map<Integer, List<Integer>> map, int i, int k) {
        List list;
        if (!map.containsKey(k)) {
            list = new ArrayList();
        } else {
            list = map.get(k);
        }
        list.add(i);
        map.put(k, list);
        return map;
    }

    public String largestNumber(int[] nums) {

        if (nums.length > 1) {
            Map<Integer, List<Integer>> map = new HashMap<>();

            for (int index = 0; index < nums.length; index++) {
                switch (String.valueOf(nums[index]).charAt(0)) {
                    case 9:
                        add(map, nums[index], 9);
                        break;
                    case 8:
                        add(map, nums[index], 8);
                        break;
                    case 7:
                        add(map, nums[index], 7);
                        break;
                    case 6:
                        add(map, nums[index], 6);
                        break;
                    case 5:
                        add(map, nums[index], 5);
                        break;
                    case 4:
                        add(map, nums[index], 4);
                        break;
                    case 3:
                        add(map, nums[index], 3);
                        break;
                    case 2:
                        add(map, nums[index], 2);
                        break;
                    case 1:
                        add(map, nums[index], 1);
                        break;
                    case 0:
                        add(map, nums[index], 0);
                        break;
                }
            }

//            for (int index = 0; index < 10; index++) {
//                List list = map.get(index);
//                Comparator<? super E> comparator = ;
//                list.sort(comparator);
//            }

        }

        return String.valueOf(nums[0]);
    }

}
